package com.aorise.model.camera;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

/**
 * @Author:cat
 * @Desicription: 视频设备新增入参实体类
 * @Date:Created in 2019-06-12
 * @Modified By:
 */
@Data
@ApiModel
public class CameraAddVO {

    @ApiModelProperty (value = "主键")
    private Integer id;

    @ApiModelProperty (value = "设备名称")
    @NotNull(message = "设备名称不能为空")
    private String caName;

    @ApiModelProperty (value = "设备编码")
    @NotNull(message = "设备编码不能为空")
    private String caNumber;

    @ApiModelProperty (value = "IP地址")
    private String ip;

    @ApiModelProperty (value = "MAC地址")
    private String mac;

    @ApiModelProperty (value = "所属分组")
    @NotNull(message = "所属分组不能为空")
    private Integer groupId;

    @ApiModelProperty (value = "设备类型：1,2,3")
    private Integer caType;

    @ApiModelProperty (value = "设备品牌：1海康，2大华，3宇视")
    private Integer brand;

    @ApiModelProperty (value = "监控类型：1，2，3")
    private Integer securityType;

    @ApiModelProperty (value = "设备账号")
    private String caAccount;

    @ApiModelProperty (value = "设备口令")
    private String caPwd;

    @ApiModelProperty (value = "安全状态：1安全，2存在隐患")
    private Integer safe;

    @ApiModelProperty (value = "连接状态：1在线，2离线")
    private Integer online;

    @ApiModelProperty (value = "入网状态：1准入，2禁入")
    private Integer netIn;

    @ApiModelProperty (value = "经度")
    private String longitude;

    @ApiModelProperty (value = "纬度")
    private String latitude;

    @ApiModelProperty (value = "高度")
    private String height;

    @ApiModelProperty (value = "可视半径（米）")
    private String radius;

    @ApiModelProperty (value = "水平视角（度）")
    private String view;

    @ApiModelProperty (value = "镜头朝向：1,2,3")
    private Integer orientation;

    @ApiModelProperty (value = "设备功能")
    private String function;

    @ApiModelProperty (value = "补光属性")
    private String fillLight;

    @ApiModelProperty (value = "立杆编号")
    private String uprightNumber;

    @ApiModelProperty (value = "周边标志")
    private String landmarks;

    @ApiModelProperty (value = "位置类型：1,2,3")
    private Integer location;

    @ApiModelProperty (value = "室内室外：1室内，2室外")
    private Integer indoorOutdoor;

    @ApiModelProperty (value = "设备型号")
    private String unitType;

    @ApiModelProperty (value = "安装时间")
    private String installationTime;

    @ApiModelProperty (value = "保修截止日期")
    private String warrantyPeriod;

    @ApiModelProperty (value = "接入网络：1,2,3")
    private Integer networkType;

    @ApiModelProperty (value = "建设单位")
    private String owner;

    @ApiModelProperty (value = "设备所属部门")
    private String belongDep;

    @ApiModelProperty (value = "承建单位")
    private String contractor;

    @ApiModelProperty (value = "维护单位")
    private String maintainer;

    @ApiModelProperty (value = "维护人员ID")
    private Integer maintUser;

    @ApiModelProperty (value = "异常状态")
    private Integer exception;

    @ApiModelProperty (value = "创建人")
    @NotNull(message = "创建人不能为空")
    private Integer createUser;


    @Override
    public String toString() {
        return "CameraAddVO{" +
                ", id='" + id + '\'' +
                ", caName='" + caName + '\'' +
                ", caNumber='" + caNumber + '\'' +
                ", ip='" + ip + '\'' +
                ", mac='" + mac + '\'' +
                ", groupId='" + groupId + '\'' +
                ", caType='" + caType + '\'' +
                ", brand='" + brand + '\'' +
                ", securityType='" + securityType + '\'' +
                ", caAccount='" + caAccount + '\'' +
                ", caPwd='" + caPwd + '\'' +
                ", safe='" + safe + '\'' +
                ", online='" + online + '\'' +
                ", netIn='" + netIn + '\'' +
                ", longitude='" + longitude + '\'' +
                ", latitude='" + latitude + '\'' +
                ", height='" + height + '\'' +
                ", radius='" + radius + '\'' +
                ", view='" + view + '\'' +
                ", orientation='" + orientation + '\'' +
                ", function='" + function + '\'' +
                ", fillLight='" + fillLight + '\'' +
                ", uprightNumber='" + uprightNumber + '\'' +
                ", landmarks='" + landmarks + '\'' +
                ", location='" + location + '\'' +
                ", indoorOutdoor='" + indoorOutdoor + '\'' +
                ", unitType='" + unitType + '\'' +
                ", installationTime='" + installationTime + '\'' +
                ", warrantyPeriod='" + warrantyPeriod + '\'' +
                ", networkType='" + networkType + '\'' +
                ", owner='" + owner + '\'' +
                ", belongDep='" + belongDep + '\'' +
                ", contractor='" + contractor + '\'' +
                ", maintainer='" + maintainer + '\'' +
                ", maintUser='" + maintUser + '\'' +
                ", exception='" + exception + '\'' +
                ", createUser=" + createUser +
                '}';
    }
}
